作用:衡量 两个分布之间的距离
为什么不对称 :-> 计算两个分布之间的不同,从分布 A 的角度看分布 B 的相似程度
特点
- 1.非负性::<-> KL(P∥Q)≥0
- 2.非对称性 :<-> KL(P∥Q)=KL(Q∥P)
- 3.当且仅当 P=Q 时 :<-> KL(P∥Q)=0
一个分布相比于另外一个分布的信息损失。
DKL(A∥B)=i∑PA(xi)log(PB(xi)PA(xi))=i∑PA(xi)log(PA(xi))−PA(xi)log(PB(xi))
A和B的交叉熵 = A与B的KL散度 - A的熵。
-
DKL(A∥B)=H(A,B)−H(A)
机器学习模型学到的分布和真实数据的分布越接近越好,但是现实中只能让模型学到的分布和训练数据的分布尽量相同,即 KL 散度最小。
-
熵 H(A) 是不依赖 B 的常数,固定 A,根据上面的公式最小化 KL 相当于最小化 H(A, B)。
-
由于训练数据是固定的,H(A) 不变。
-
如果 A 是固定的,关于 B 的优化 KL 散度等于优化交叉熵。
P 真实样本的分布,Q模型预测样本的分布,如果 Q 越接近 P,散度就越小。散度的值非负。
-
P 是未知分布,Q 是已知分布
-
D(p∥q)=∑xp(x)logq(x)p(x)=Ep(x)(logq(x)p(x))
[[@百面机器学习]]
-
KL 距离不是真正的距离,不满足 三角形不等式 和 交换律
KL散度理解 - 知乎
-
如何证明 KL 散度大于等于 0 #card
-
KL(P∥Q)=∫P(x)lnQ(x)P(x)dx=−∫P(x)lnP(x)Q(x)dx≥−∫P(x)(P(x)Q(x)−1)dx=−∫Q(x)−P(x)dx=0
-
推导中第三行利用不等式 ln(x)≤x−1
-
最后一行 Q(x) 和 P(x) 都是概率密度函数,所以积分值都等于1
-
最小化 Kullback-Leibler 散度等价于最大化似然函数